#ifndef _core_dispatch_limits_hpp_
#define _core_dispatch_limits_hpp_

/** \file limits.hpp Macros that limit the number of specializations that th
 *  preprocessor has to generate
 *  \author Adrian Schweizer
 *  \created  $Sa 18 Aug 03:48:01 pm CEST 2007 schwadri@SchwadriComp.local$
 *  \modified $So 19 Aug 02:01:25 pm CEST 2007 schwadri@SchwadriComp.local$
 */

#ifndef CORE_LIMIT_VECTOR_MAX_SIZE
    #define CORE_LIMIT_VECTOR_MAX_SIZE 20 ///< the maximum number of allowed types in a vector.
#endif

#define BOOST_MPL_LIMIT_VECTOR_SIZE CORE_LIMIT_VECTOR_MAX_SIZE

#ifndef CORE_LIMIT_MAP_MAX_SIZE
    #define CORE_LIMIT_MAP_MAX_SIZE 20
#endif

#define BOOST_MPL_LIMIT_MAP_SIZE CORE_LIMIT_MAP_MAX_SIZE

#ifndef CORE_LIMIT_INVOKER_MAX_ARITY
    #define CORE_LIMIT_INVOKER_MAX_ARITY 4
#endif

#ifndef CORE_LIMIT_SWITCH_MAX_CASES
    #define CORE_LIMIT_SWITCH_MAX_CASES 20
#endif

#endif // _core_dispatch_limits_hpp_
